package com.gitee.free.coding.core.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 自定义 序列号生成 枚举
 */
@Getter
@AllArgsConstructor
public enum SequenceEnum {

    USER_ID("u_", "%06d", ""),
    ;

    /**
     * 序列前缀
     */
    private final String prefix;

    /**
     * 序列主体
     */
    private final String body;

    /**
     * 序列后缀
     */
    private final String suffix;

    /**
     * 生成序列号
     * 例如 USER_ID  ==>  u_000001
     *
     * @param numberNo 数字
     * @return 序列号
     */
    public String generateSerialNo(Integer numberNo) {
        return prefix + String.format(body, numberNo) + suffix;
    }
}
